const {getEssay} = require('../service/essay');
const path = require('path')
const fs = require('fs');
class Essay{
    async getEssay(ctx,next){
       console.log(ctx);
      const tid = ctx.request.body.tid || undefined;
      ctx.body =  await getEssay(tid);
    }
    async createEssay(ctx,next){

    }
     uploadImage(ctx,next){
       //这是单文件上传
      // const file = ctx.request.files.qqq;
      // console.log(file.path);
      // let extname = path.extname(file.name);
      // let reader = fs.createReadStream(file.path);
      // let writer = fs.createWriteStream(
      //   `static/${Math.random()
      //     .toString(36)
      //     .substr(2)}${extname}`
      //     );
      //     reader.pipe(writer);
      //这是多文件上传    
      const files = Object.entries(ctx.request.files);
      
      files.map((item,index)=>{
        console.log(item[0],item[1]);
        let extname = path.extname(item[1].name);
        let reader = fs.createReadStream(item[1].path);
        let writer = fs.createWriteStream(
          `static/${Math.random()
            .toString(36)
            .substr(2)}${extname}`
            
        );
        reader.pipe(writer);
          })
        
 
      
     
  //　本地文件服务器获取POST上传文件过程
  // １. fs.createReadStream 创建可读流
  // ２. fs.createWriteStream　创建可写流
  // 3. reader.pipe(writer)

 
      ctx.body = 
      {
        // errno 即错误代码，0 表示没有错误。
        //       如果有错误，errno != 0，可通过下文中的监听函数 fail 拿到该错误码进行自定义处理
        "errno": 0,
    
        // data 是一个数组，返回图片的线上地址
        "data": [
            "图片1地址",
            "图片2地址",
            "……"
        ]
    }
    }
}
module.exports = new Essay();